#ifndef PRIMEFUNCTIONS_H_
#define PRIMEFUNCTIONS_H_

#include <opencv2/opencv.hpp>
namespace yjy
{

struct ImprovedConfig
{
    bool dynamicWS;
    bool new_priority;
    bool isQuikMatch;
    int candidatorNum;
    int CIE_color;
    int CIE_color_inverse;
};

class Config
{
  private:
    bool run_criminisi;
    bool run_improved;
    struct ImprovedConfig icf;

  public:
    bool variable_init_ws;   
    int  init_ws = 9;
  
    Config(std::string path);
    //bool IsdynamicWS(){return icf.dynamicWS;};
    bool IsCriminisi(){return run_criminisi;};
    bool IsImproved(){return run_improved;};
    struct ImprovedConfig getICF(){return icf;};
};

double norm_yjy(cv::Mat &src1, cv::Mat &src2, int normType, cv::Mat &mask);
}

#endif